home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1993 July / InfoMagic USENET CD-ROM July 1993.ISO / sources / unix / volume15 / twm / part03 < prev    next >
Encoding:
Internet Message Format  |  1988-06-12  |  52.7 KB

  1. Subject:  v15i066:  A window manager for X, Part03/04
  2. Newsgroups: comp.sources.unix
  3. Sender: sources
  4. Approved: rsalz@uunet.UU.NET
  5.  
  6. Submitted-by: Tom LaStrange <esunix!tlastran>
  7. Posting-number: Volume 15, Issue 66
  8. Archive-name: twm/part03
  9.  
  10. #! /bin/sh
  11. # This is a shell archive, meaning:
  12. # 1.  Remove everything above the #! /bin/sh line.
  13. # 2.  Save the resulting test in a file
  14. # 3.  Execute the file with /bin/sh (not csh) to create the files:
  15. #
  16. #add_window.h
  17. #events.h
  18. #focus.bm
  19. #gc.h
  20. #gram.h
  21. #hilite.bm
  22. #iconify.bm
  23. #list.h
  24. #menus.h
  25. #parse.h
  26. #pull.bm
  27. #resize.bm
  28. #resize.h
  29. #twm.bm
  30. #twm.h
  31. #util.h
  32. #version.h
  33. #xterm.bm
  34. #
  35. #
  36. if test -f 'add_window.h'
  37. then
  38.     echo shar: will not over-write existing file "add_window.h"
  39. else
  40. echo extracting "add_window.h"
  41. sed 's/^X//' >add_window.h <<'SHAR_EOF'
  42. X/*****************************************************************************/
  43. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  44. X/**                          Salt Lake City, Utah                           **/
  45. X/**                                                                         **/
  46. X/**                           All Rights Reserved                           **/
  47. X/**                                                                         **/
  48. X/**    Permission to use, copy, modify, and distribute this software and    **/
  49. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  50. X/**    granted, provided that the above copyright notice appear  in  all    **/
  51. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  52. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  53. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  54. X/**    city pertaining to distribution  of the software without  specif-    **/
  55. X/**    ic, written prior permission.                                        **/
  56. X/**                                                                         **/
  57. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  58. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  59. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  60. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  61. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  62. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  63. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  64. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  65. X/*****************************************************************************/
  66. X
  67. X/**********************************************************************
  68. X *
  69. X * $Header: add_window.h,v 1.3 88/04/15 07:10:07 tlastran Exp $
  70. X *
  71. X * AddWindow include file
  72. X *
  73. X * 31-Mar-88 Tom LaStrange        Initial Version.
  74. X *
  75. X **********************************************************************/
  76. X
  77. X#ifndef _ADD_WINDOW_
  78. X#define _ADD_WINDOW_
  79. X
  80. Xextern TwmWindow *AddWindow();
  81. Xextern int MappedNotOverride();
  82. X
  83. X#endif _ADD_WINDOW_
  84. X
  85. SHAR_EOF
  86. if test 2348 -ne "`wc -c < add_window.h`"
  87. then
  88.     echo shar: error transmitting "add_window.h" '(should have been 2348 characters)'
  89. fi
  90. fi
  91. if test -f 'events.h'
  92. then
  93.     echo shar: will not over-write existing file "events.h"
  94. else
  95. echo extracting "events.h"
  96. sed 's/^X//' >events.h <<'SHAR_EOF'
  97. X/*****************************************************************************/
  98. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  99. X/**                          Salt Lake City, Utah                           **/
  100. X/**                                                                         **/
  101. X/**                           All Rights Reserved                           **/
  102. X/**                                                                         **/
  103. X/**    Permission to use, copy, modify, and distribute this software and    **/
  104. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  105. X/**    granted, provided that the above copyright notice appear  in  all    **/
  106. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  107. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  108. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  109. X/**    city pertaining to distribution  of the software without  specif-    **/
  110. X/**    ic, written prior permission.                                        **/
  111. X/**                                                                         **/
  112. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  113. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  114. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  115. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  116. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  117. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  118. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  119. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  120. X/*****************************************************************************/
  121. X
  122. X/***********************************************************************
  123. X *
  124. X * $Header: events.h,v 1.6 88/04/15 07:09:51 tlastran Exp $
  125. X *
  126. X * twm event handler include file
  127. X *
  128. X * 17-Nov-87 Thomas E. LaStrange        File created
  129. X *
  130. X ***********************************************************************/
  131. X
  132. X#ifndef _EVENTS_
  133. X#define _EVENTS_
  134. X
  135. Xtypedef void (*event_proc)();
  136. X
  137. Xextern void HandleEvents();
  138. Xextern void HandleExpose();
  139. Xextern void HandleDestroyNotify();
  140. Xextern void HandleMapRequest();
  141. Xextern void HandleMapNotify();
  142. Xextern void HandleUnmapNotify();
  143. Xextern void HandleMotionNotify();
  144. Xextern void HandleButtonRelease();
  145. Xextern void HandleButtonPress();
  146. Xextern void HandleEnterNotify();
  147. Xextern void HandleLeaveNotify();
  148. Xextern void HandleConfigureNotify();
  149. Xextern void HandleClientMessage();
  150. Xextern void HandleUnknown();
  151. X
  152. X#endif _EVENTS_
  153. SHAR_EOF
  154. if test 2761 -ne "`wc -c < events.h`"
  155. then
  156.     echo shar: error transmitting "events.h" '(should have been 2761 characters)'
  157. fi
  158. fi
  159. if test -f 'focus.bm'
  160. then
  161.     echo shar: will not over-write existing file "focus.bm"
  162. else
  163. echo extracting "focus.bm"
  164. sed 's/^X//' >focus.bm <<'SHAR_EOF'
  165. X/*****************************************************************************/
  166. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  167. X/**                          Salt Lake City, Utah                           **/
  168. X/**                                                                         **/
  169. X/**                           All Rights Reserved                           **/
  170. X/**                                                                         **/
  171. X/**    Permission to use, copy, modify, and distribute this software and    **/
  172. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  173. X/**    granted, provided that the above copyright notice appear  in  all    **/
  174. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  175. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  176. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  177. X/**    city pertaining to distribution  of the software without  specif-    **/
  178. X/**    ic, written prior permission.                                        **/
  179. X/**                                                                         **/
  180. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  181. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  182. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  183. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  184. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  185. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  186. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  187. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  188. X/*****************************************************************************/
  189. X
  190. X#define focus_width 15
  191. X#define focus_height 15
  192. Xstatic char focus_bits[] = {
  193. X   0xff, 0xff, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0xfd, 0xdf, 0x55, 0xd5,
  194. X   0xfd, 0xdf, 0x55, 0xd5, 0xfd, 0xdf, 0x05, 0xd0, 0xfd, 0xdf, 0x01, 0xc0,
  195. X   0x01, 0xc0, 0x01, 0xc0, 0xff, 0xff};
  196. SHAR_EOF
  197. if test 2187 -ne "`wc -c < focus.bm`"
  198. then
  199.     echo shar: error transmitting "focus.bm" '(should have been 2187 characters)'
  200. fi
  201. fi
  202. if test -f 'gc.h'
  203. then
  204.     echo shar: will not over-write existing file "gc.h"
  205. else
  206. echo extracting "gc.h"
  207. sed 's/^X//' >gc.h <<'SHAR_EOF'
  208. X/*****************************************************************************/
  209. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  210. X/**                          Salt Lake City, Utah                           **/
  211. X/**                                                                         **/
  212. X/**                           All Rights Reserved                           **/
  213. X/**                                                                         **/
  214. X/**    Permission to use, copy, modify, and distribute this software and    **/
  215. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  216. X/**    granted, provided that the above copyright notice appear  in  all    **/
  217. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  218. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  219. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  220. X/**    city pertaining to distribution  of the software without  specif-    **/
  221. X/**    ic, written prior permission.                                        **/
  222. X/**                                                                         **/
  223. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  224. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  225. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  226. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  227. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  228. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  229. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  230. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  231. X/*****************************************************************************/
  232. X
  233. X/**********************************************************************
  234. X *
  235. X * $Header: gc.h,v 1.2 88/04/15 07:09:52 tlastran Exp $
  236. X *
  237. X * GC related externs
  238. X *
  239. X *  8-Apr-88 Tom LaStrange        Initial Version.
  240. X *
  241. X **********************************************************************/
  242. X
  243. X#ifndef _GC_
  244. X#define _GC_
  245. X
  246. Xextern void CreateGCs();
  247. X
  248. X#endif _GC_
  249. SHAR_EOF
  250. if test 2273 -ne "`wc -c < gc.h`"
  251. then
  252.     echo shar: error transmitting "gc.h" '(should have been 2273 characters)'
  253. fi
  254. fi
  255. if test -f 'gram.h'
  256. then
  257.     echo shar: will not over-write existing file "gram.h"
  258. else
  259. echo extracting "gram.h"
  260. sed 's/^X//' >gram.h <<'SHAR_EOF'
  261. X
  262. Xtypedef union 
  263. X{
  264. X    int num;
  265. X    char *ptr;
  266. X} YYSTYPE;
  267. Xextern YYSTYPE yylval;
  268. X# define LB 257
  269. X# define RB 258
  270. X# define MENUS 259
  271. X# define MENU 260
  272. X# define BUTTON 261
  273. X# define TBUTTON 262
  274. X# define F_MENU 263
  275. X# define F_FOCUS 264
  276. X# define F_REFRESH 265
  277. X# define F_FILE 266
  278. X# define F_TWMRC 267
  279. X# define F_CIRCLEUP 268
  280. X# define F_QUIT 269
  281. X# define F_NOP 270
  282. X# define F_TITLE 271
  283. X# define F_VERSION 272
  284. X# define F_EXEC 273
  285. X# define F_CUT 274
  286. X# define F_CIRCLEDOWN 275
  287. X# define F_SOURCE 276
  288. X# define F_CUTFILE 277
  289. X# define T_NOP 278
  290. X# define T_RAISE 279
  291. X# define T_LOWER 280
  292. X# define T_MOVE 281
  293. X# define WARPCURSOR 282
  294. X# define NUMBER 283
  295. X# define BORDERWIDTH 284
  296. X# define TITLE_FONT 285
  297. X# define REVERSE_VIDEO 286
  298. X# define RESIZE_FONT 287
  299. X# define NO_TITLE 288
  300. X# define AUTO_RAISE 289
  301. X# define MENU_FONT 290
  302. X# define ICON_FONT 291
  303. X# define UNKNOWN_ICON 292
  304. X# define STRING 293
  305. SHAR_EOF
  306. if test 876 -ne "`wc -c < gram.h`"
  307. then
  308.     echo shar: error transmitting "gram.h" '(should have been 876 characters)'
  309. fi
  310. fi
  311. if test -f 'hilite.bm'
  312. then
  313.     echo shar: will not over-write existing file "hilite.bm"
  314. else
  315. echo extracting "hilite.bm"
  316. sed 's/^X//' >hilite.bm <<'SHAR_EOF'
  317. X/*****************************************************************************/
  318. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  319. X/**                          Salt Lake City, Utah                           **/
  320. X/**                                                                         **/
  321. X/**                           All Rights Reserved                           **/
  322. X/**                                                                         **/
  323. X/**    Permission to use, copy, modify, and distribute this software and    **/
  324. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  325. X/**    granted, provided that the above copyright notice appear  in  all    **/
  326. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  327. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  328. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  329. X/**    city pertaining to distribution  of the software without  specif-    **/
  330. X/**    ic, written prior permission.                                        **/
  331. X/**                                                                         **/
  332. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  333. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  334. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  335. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  336. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  337. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  338. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  339. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  340. X/*****************************************************************************/
  341. X
  342. X#define hilite_width 16
  343. X#define hilite_height 16
  344. Xstatic char hilite_bits[] = {
  345. X   0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00,
  346. X   0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00,
  347. X   0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
  348. SHAR_EOF
  349. if test 2202 -ne "`wc -c < hilite.bm`"
  350. then
  351.     echo shar: error transmitting "hilite.bm" '(should have been 2202 characters)'
  352. fi
  353. fi
  354. if test -f 'iconify.bm'
  355. then
  356.     echo shar: will not over-write existing file "iconify.bm"
  357. else
  358. echo extracting "iconify.bm"
  359. sed 's/^X//' >iconify.bm <<'SHAR_EOF'
  360. X/*****************************************************************************/
  361. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  362. X/**                          Salt Lake City, Utah                           **/
  363. X/**                                                                         **/
  364. X/**                           All Rights Reserved                           **/
  365. X/**                                                                         **/
  366. X/**    Permission to use, copy, modify, and distribute this software and    **/
  367. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  368. X/**    granted, provided that the above copyright notice appear  in  all    **/
  369. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  370. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  371. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  372. X/**    city pertaining to distribution  of the software without  specif-    **/
  373. X/**    ic, written prior permission.                                        **/
  374. X/**                                                                         **/
  375. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  376. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  377. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  378. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  379. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  380. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  381. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  382. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  383. X/*****************************************************************************/
  384. X
  385. X#define iconify_width 15
  386. X#define iconify_height 15
  387. Xstatic char iconify_bits[] = {
  388. X   0xff, 0xff, 0x01, 0xc0, 0x7d, 0xdf, 0x7d, 0xdf, 0x7d, 0xdf, 0x7d, 0xdf,
  389. X   0x7d, 0xdf, 0x01, 0xc0, 0x7d, 0xdf, 0x7d, 0xdf, 0x7d, 0xdf, 0x7d, 0xdf,
  390. X   0x7d, 0xdf, 0x01, 0xc0, 0xff, 0xff};
  391. SHAR_EOF
  392. if test 2193 -ne "`wc -c < iconify.bm`"
  393. then
  394.     echo shar: error transmitting "iconify.bm" '(should have been 2193 characters)'
  395. fi
  396. fi
  397. if test -f 'list.h'
  398. then
  399.     echo shar: will not over-write existing file "list.h"
  400. else
  401. echo extracting "list.h"
  402. sed 's/^X//' >list.h <<'SHAR_EOF'
  403. X/*****************************************************************************/
  404. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  405. X/**                          Salt Lake City, Utah                           **/
  406. X/**                                                                         **/
  407. X/**                           All Rights Reserved                           **/
  408. X/**                                                                         **/
  409. X/**    Permission to use, copy, modify, and distribute this software and    **/
  410. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  411. X/**    granted, provided that the above copyright notice appear  in  all    **/
  412. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  413. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  414. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  415. X/**    city pertaining to distribution  of the software without  specif-    **/
  416. X/**    ic, written prior permission.                                        **/
  417. X/**                                                                         **/
  418. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  419. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  420. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  421. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  422. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  423. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  424. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  425. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  426. X/*****************************************************************************/
  427. X
  428. X/**********************************************************************
  429. X *
  430. X * $Header: list.h,v 1.2 88/04/15 07:10:08 tlastran Exp $
  431. X *
  432. X * TWM list handling external definitions
  433. X *
  434. X * 11-Apr-88 Tom LaStrange        Initial Version.
  435. X *
  436. X **********************************************************************/
  437. X
  438. X#ifndef _LIST_
  439. X#define _LIST_
  440. X
  441. Xextern void AddToList();
  442. Xextern int LookInList();
  443. X
  444. X#endif _LIST_
  445. X
  446. SHAR_EOF
  447. if test 2327 -ne "`wc -c < list.h`"
  448. then
  449.     echo shar: error transmitting "list.h" '(should have been 2327 characters)'
  450. fi
  451. fi
  452. if test -f 'menus.h'
  453. then
  454.     echo shar: will not over-write existing file "menus.h"
  455. else
  456. echo extracting "menus.h"
  457. sed 's/^X//' >menus.h <<'SHAR_EOF'
  458. X/*****************************************************************************/
  459. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  460. X/**                          Salt Lake City, Utah                           **/
  461. X/**                                                                         **/
  462. X/**                           All Rights Reserved                           **/
  463. X/**                                                                         **/
  464. X/**    Permission to use, copy, modify, and distribute this software and    **/
  465. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  466. X/**    granted, provided that the above copyright notice appear  in  all    **/
  467. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  468. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  469. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  470. X/**    city pertaining to distribution  of the software without  specif-    **/
  471. X/**    ic, written prior permission.                                        **/
  472. X/**                                                                         **/
  473. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  474. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  475. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  476. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  477. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  478. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  479. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  480. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  481. X/*****************************************************************************/
  482. X
  483. X/***********************************************************************
  484. X *
  485. X * $Header: menus.h,v 1.7 88/04/15 07:09:56 tlastran Exp $
  486. X *
  487. X * twm menus include file
  488. X *
  489. X * 17-Nov-87 Thomas E. LaStrange        File created
  490. X *
  491. X ***********************************************************************/
  492. X
  493. X#ifndef _MENUS_
  494. X#define _MENUS_
  495. X
  496. X#define TWM_ROOT    "blob_goop"    /* my private root menu */
  497. X
  498. X#define MAX_FILE_SIZE 4096    /* max chars to read from file for cut */
  499. X
  500. Xtypedef struct MenuItem
  501. X{
  502. X    struct MenuItem *next;    /* next menu item */
  503. X    struct MenuItem *prev;    /* prev menu item */
  504. X    struct MenuRoot *sub;    /* MenuRoot of a pull right menu */
  505. X    struct MenuRoot *root;    /* back pointer to my MenuRoot */
  506. X    char *item;            /* the character string displayed */
  507. X    int y;            /* y coordinate for text */
  508. X    char *action;        /* action to be performed */
  509. X    Window w;            /* the item window */
  510. X    Window pull;        /* the pull right window (if any) */
  511. X    int func;            /* twm built in function */
  512. X    int state;            /* video state, 0 = normal, 1 = reversed */
  513. X} MenuItem;
  514. X
  515. Xtypedef struct MenuRoot
  516. X{
  517. X    struct MenuItem *first;    /* first item in menu */
  518. X    struct MenuItem *last;    /* last item in menu */
  519. X    struct MenuRoot *prev;    /* previous root menu if pull right */
  520. X    struct MenuRoot *next;    /* next in list of root menus */
  521. X    char *name;            /* name of root */
  522. X    Window w;            /* the window of the menu */
  523. X    Window shadow;        /* the shadow window */
  524. X    int mapped;            /* has the menu ever been mapped ? */
  525. X    int width;            /* width of the menu */
  526. X    int items;            /* number of items in the menu */
  527. X    int pull;            /* is there a pull right entry ? */
  528. X    int active;            /* this menu is active */
  529. X} MenuRoot;
  530. X
  531. Xextern MenuRoot *Menu[];
  532. Xextern MenuItem *Item[];
  533. Xextern MenuRoot *MenuList;
  534. Xextern MenuRoot *LastMenu;
  535. Xextern MenuRoot *ActiveMenu;
  536. Xextern MenuItem *ActiveItem;
  537. X
  538. Xextern void InitMenus();
  539. Xextern MenuRoot *NewMenuRoot();
  540. Xextern MenuItem *AddToMenu();
  541. Xextern void PopUpMenu();
  542. Xextern MenuRoot *FindMenuRoot();
  543. Xextern void ExecuteFunction();
  544. Xextern void Execute();
  545. Xextern void FocusOnRoot();
  546. X
  547. X#endif _MENUS_
  548. SHAR_EOF
  549. if test 4017 -ne "`wc -c < menus.h`"
  550. then
  551.     echo shar: error transmitting "menus.h" '(should have been 4017 characters)'
  552. fi
  553. fi
  554. if test -f 'parse.h'
  555. then
  556.     echo shar: will not over-write existing file "parse.h"
  557. else
  558. echo extracting "parse.h"
  559. sed 's/^X//' >parse.h <<'SHAR_EOF'
  560. X/*****************************************************************************/
  561. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  562. X/**                          Salt Lake City, Utah                           **/
  563. X/**                                                                         **/
  564. X/**                           All Rights Reserved                           **/
  565. X/**                                                                         **/
  566. X/**    Permission to use, copy, modify, and distribute this software and    **/
  567. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  568. X/**    granted, provided that the above copyright notice appear  in  all    **/
  569. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  570. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  571. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  572. X/**    city pertaining to distribution  of the software without  specif-    **/
  573. X/**    ic, written prior permission.                                        **/
  574. X/**                                                                         **/
  575. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  576. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  577. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  578. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  579. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  580. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  581. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  582. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  583. X/*****************************************************************************/
  584. X
  585. X/**********************************************************************
  586. X *
  587. X * $Header: parse.h,v 1.2 88/04/15 07:10:10 tlastran Exp $
  588. X *
  589. X * .twmrc parsing externs
  590. X *
  591. X *  8-Apr-88 Tom LaStrange        Initial Version.
  592. X *
  593. X **********************************************************************/
  594. X
  595. X#ifndef _PARSE_
  596. X#define _PARSE_
  597. X
  598. Xextern void ParseTwmrc();
  599. Xextern char TwmInput();
  600. Xextern void TwmUnput();
  601. Xextern void TwmOutput();
  602. X
  603. X#endif _PARSE_
  604. SHAR_EOF
  605. if test 2363 -ne "`wc -c < parse.h`"
  606. then
  607.     echo shar: error transmitting "parse.h" '(should have been 2363 characters)'
  608. fi
  609. fi
  610. if test -f 'pull.bm'
  611. then
  612.     echo shar: will not over-write existing file "pull.bm"
  613. else
  614. echo extracting "pull.bm"
  615. sed 's/^X//' >pull.bm <<'SHAR_EOF'
  616. X/*****************************************************************************/
  617. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  618. X/**                          Salt Lake City, Utah                           **/
  619. X/**                                                                         **/
  620. X/**                           All Rights Reserved                           **/
  621. X/**                                                                         **/
  622. X/**    Permission to use, copy, modify, and distribute this software and    **/
  623. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  624. X/**    granted, provided that the above copyright notice appear  in  all    **/
  625. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  626. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  627. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  628. X/**    city pertaining to distribution  of the software without  specif-    **/
  629. X/**    ic, written prior permission.                                        **/
  630. X/**                                                                         **/
  631. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  632. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  633. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  634. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  635. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  636. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  637. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  638. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  639. X/*****************************************************************************/
  640. X
  641. X#define pull_width 15
  642. X#define pull_height 17
  643. Xstatic char pull_bits[] = {
  644. X   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x60, 0x00, 0xe0, 0x00,
  645. X   0xff, 0x01, 0xff, 0x03, 0xff, 0x01, 0xe0, 0x00, 0x60, 0x00, 0x20, 0x00,
  646. X   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
  647. SHAR_EOF
  648. if test 2208 -ne "`wc -c < pull.bm`"
  649. then
  650.     echo shar: error transmitting "pull.bm" '(should have been 2208 characters)'
  651. fi
  652. fi
  653. if test -f 'resize.bm'
  654. then
  655.     echo shar: will not over-write existing file "resize.bm"
  656. else
  657. echo extracting "resize.bm"
  658. sed 's/^X//' >resize.bm <<'SHAR_EOF'
  659. X/*****************************************************************************/
  660. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  661. X/**                          Salt Lake City, Utah                           **/
  662. X/**                                                                         **/
  663. X/**                           All Rights Reserved                           **/
  664. X/**                                                                         **/
  665. X/**    Permission to use, copy, modify, and distribute this software and    **/
  666. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  667. X/**    granted, provided that the above copyright notice appear  in  all    **/
  668. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  669. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  670. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  671. X/**    city pertaining to distribution  of the software without  specif-    **/
  672. X/**    ic, written prior permission.                                        **/
  673. X/**                                                                         **/
  674. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  675. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  676. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  677. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  678. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  679. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  680. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  681. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  682. X/*****************************************************************************/
  683. X
  684. X#define resize_width 15
  685. X#define resize_height 15
  686. Xstatic char resize_bits[] = {
  687. X   0xff, 0xff, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0xff, 0xc7, 0x01, 0xc4,
  688. X   0x01, 0xc4, 0x01, 0xc4, 0x7f, 0xc4, 0x41, 0xc4, 0x41, 0xc4, 0x41, 0xc4,
  689. X   0x41, 0xc4, 0x41, 0xc4, 0xff, 0xff};
  690. SHAR_EOF
  691. if test 2190 -ne "`wc -c < resize.bm`"
  692. then
  693.     echo shar: error transmitting "resize.bm" '(should have been 2190 characters)'
  694. fi
  695. fi
  696. if test -f 'resize.h'
  697. then
  698.     echo shar: will not over-write existing file "resize.h"
  699. else
  700. echo extracting "resize.h"
  701. sed 's/^X//' >resize.h <<'SHAR_EOF'
  702. X/*****************************************************************************/
  703. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  704. X/**                          Salt Lake City, Utah                           **/
  705. X/**                                                                         **/
  706. X/**                           All Rights Reserved                           **/
  707. X/**                                                                         **/
  708. X/**    Permission to use, copy, modify, and distribute this software and    **/
  709. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  710. X/**    granted, provided that the above copyright notice appear  in  all    **/
  711. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  712. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  713. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  714. X/**    city pertaining to distribution  of the software without  specif-    **/
  715. X/**    ic, written prior permission.                                        **/
  716. X/**                                                                         **/
  717. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  718. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  719. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  720. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  721. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  722. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  723. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  724. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  725. X/*****************************************************************************/
  726. X
  727. X/**********************************************************************
  728. X *
  729. X * $Header: resize.h,v 1.4 88/04/15 07:09:37 tlastran Exp $
  730. X *
  731. X * resize function externs
  732. X *
  733. X *  8-Apr-88 Tom LaStrange        Initial Version.
  734. X *
  735. X **********************************************************************/
  736. X
  737. X#ifndef _RESIZE_
  738. X#define _RESIZE_
  739. X
  740. Xextern void StartResize();
  741. Xextern void DoResize();
  742. Xextern void DisplaySize();
  743. Xextern void EndResize();
  744. Xextern void SetupWindow();
  745. X
  746. X#endif _RESIZE_
  747. SHAR_EOF
  748. if test 2399 -ne "`wc -c < resize.h`"
  749. then
  750.     echo shar: error transmitting "resize.h" '(should have been 2399 characters)'
  751. fi
  752. fi
  753. if test -f 'twm.bm'
  754. then
  755.     echo shar: will not over-write existing file "twm.bm"
  756. else
  757. echo extracting "twm.bm"
  758. sed 's/^X//' >twm.bm <<'SHAR_EOF'
  759. X/*****************************************************************************/
  760. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  761. X/**                          Salt Lake City, Utah                           **/
  762. X/**                                                                         **/
  763. X/**                           All Rights Reserved                           **/
  764. X/**                                                                         **/
  765. X/**    Permission to use, copy, modify, and distribute this software and    **/
  766. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  767. X/**    granted, provided that the above copyright notice appear  in  all    **/
  768. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  769. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  770. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  771. X/**    city pertaining to distribution  of the software without  specif-    **/
  772. X/**    ic, written prior permission.                                        **/
  773. X/**                                                                         **/
  774. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  775. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  776. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  777. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  778. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  779. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  780. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  781. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  782. X/*****************************************************************************/
  783. X
  784. X#define twm_width 48
  785. X#define twm_height 15
  786. Xstatic char twm_bits[] = {
  787. X   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x0f,
  788. X   0xfe, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00,
  789. X   0xc0, 0x0c, 0x0c, 0xcc, 0xc0, 0x00, 0xc0, 0x0c, 0x0c, 0xcc, 0xc0, 0x00,
  790. X   0x60, 0x18, 0x1e, 0xe6, 0xe1, 0x01, 0x60, 0x18, 0x1e, 0xe6, 0xe1, 0x01,
  791. X   0x30, 0x30, 0x33, 0x33, 0x33, 0x03, 0x30, 0x30, 0x33, 0x33, 0x33, 0x03,
  792. X   0x18, 0xe0, 0xe1, 0x19, 0x1e, 0x06, 0x18, 0xe0, 0xe1, 0x19, 0x1e, 0x06,
  793. X   0x0c, 0xc0, 0xc0, 0x0c, 0x0c, 0x0c, 0x0c, 0xc0, 0xc0, 0x0c, 0x0c, 0x0c,
  794. X   0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
  795. SHAR_EOF
  796. if test 2556 -ne "`wc -c < twm.bm`"
  797. then
  798.     echo shar: error transmitting "twm.bm" '(should have been 2556 characters)'
  799. fi
  800. fi
  801. if test -f 'twm.h'
  802. then
  803.     echo shar: will not over-write existing file "twm.h"
  804. else
  805. echo extracting "twm.h"
  806. sed 's/^X//' >twm.h <<'SHAR_EOF'
  807. X/*****************************************************************************/
  808. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  809. X/**                          Salt Lake City, Utah                           **/
  810. X/**                                                                         **/
  811. X/**                           All Rights Reserved                           **/
  812. X/**                                                                         **/
  813. X/**    Permission to use, copy, modify, and distribute this software and    **/
  814. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  815. X/**    granted, provided that the above copyright notice appear  in  all    **/
  816. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  817. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  818. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  819. X/**    city pertaining to distribution  of the software without  specif-    **/
  820. X/**    ic, written prior permission.                                        **/
  821. X/**                                                                         **/
  822. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  823. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  824. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  825. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  826. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  827. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  828. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  829. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  830. X/*****************************************************************************/
  831. X
  832. X/***********************************************************************
  833. X *
  834. X * $Header: twm.h,v 1.14 88/04/15 07:09:40 tlastran Exp $
  835. X *
  836. X * twm include file
  837. X *
  838. X * 28-Oct-87 Thomas E. LaStrange    File created
  839. X *
  840. X ***********************************************************************/
  841. X
  842. X#ifndef _TWM_
  843. X#define _TWM_
  844. X
  845. X#include <X11/Xlib.h>
  846. X#include <X11/Xutil.h>
  847. X#include <X11/cursorfont.h>
  848. X
  849. X#ifndef TRUE
  850. X#define TRUE    1
  851. X#define FALSE    0
  852. X#endif
  853. X
  854. X#define BW 2            /* border width */
  855. X
  856. X#define MAX_BUTTONS    5    /* max mouse buttons supported */
  857. X
  858. X#define TITLE_BAR_SPACE         1    /* 2 pixel space bordering chars */
  859. X#define TITLE_BAR_FONT_HEIGHT   15    /* max of 15 pixel high chars */
  860. X#define TITLE_BAR_HEIGHT        (TITLE_BAR_FONT_HEIGHT+(2*TITLE_BAR_SPACE))
  861. X
  862. X/* for each window that is on the display, one of these structures
  863. X * is allocated and linked into a list 
  864. X */
  865. Xtypedef struct TwmWindow
  866. X{
  867. X    struct TwmWindow *next;    /* next twm window */
  868. X    struct TwmWindow *prev;    /* previous twm window */
  869. X    Window w;            /* the child window */
  870. X    Window frame;        /* the frame window */
  871. X    Window title_w;        /* the title bar window */
  872. X    Window iconify_w;        /* the iconify button */
  873. X    Window resize_w;        /* the resize button */
  874. X    Window focus_w;        /* the focus window */
  875. X    Window hilite_w;        /* the hilite window */
  876. X    Window icon_w;        /* the icon window */
  877. X    int frame_x;        /* x position of frame */
  878. X    int frame_y;        /* y position of frame */
  879. X    int icon_x;            /* icon text x coordinate */
  880. X    int icon_y;            /* icon text y coordiante */
  881. X    int title_height;        /* height of the title bar */
  882. X    char *full_name;        /* full name of the window */
  883. X    char *name;            /* name of the window */
  884. X    char *icon_name;        /* name of the icon */
  885. X    int name_width;        /* width of name text */
  886. X    XWindowAttributes attr;    /* the child window attributes */
  887. X    XSizeHints hints;        /* normal hints */
  888. X    XWMHints *wmhints;        /* WM hints */
  889. X    short xterm;        /* boolean indicating xterm */
  890. X    short iconified;        /* has the window ever been iconified? */
  891. X    short icon;            /* is the window an icon now ? */
  892. X    short mapped;        /* is the window mapped ? */
  893. X    short auto_raise;        /* should we auto-raise this window ? */
  894. X} TwmWindow;
  895. X
  896. Xextern TwmWindow TwmRoot;
  897. X
  898. Xextern Display *dpy;
  899. X
  900. Xextern Window Root;
  901. Xextern Window VersionWindow;
  902. Xextern Window SizeWindow;
  903. Xextern Window ResizeWindow;
  904. X
  905. Xextern XFontStruct *TitleBarFont;
  906. Xextern XFontStruct *MenuFont;
  907. Xextern XFontStruct *IconFont;
  908. Xextern XFontStruct *SizeFont;
  909. Xextern XFontStruct *VersionFont;
  910. X
  911. Xextern char *TitleBarFontName;
  912. Xextern char *MenuFontName;
  913. Xextern char *IconFontName;
  914. Xextern char *SizeFontName;
  915. Xextern char *VersionFontName;
  916. X
  917. Xextern int TitleBarFontHeight;
  918. Xextern int MenuFontHeight;
  919. Xextern int IconFontHeight;
  920. Xextern int SizeFontHeight;
  921. Xextern int VersionFontHeight;
  922. X
  923. Xextern Cursor ArrowCursor;
  924. Xextern Cursor ButtonCursor;
  925. Xextern Cursor MoveCursor;
  926. Xextern Cursor ClockCursor;
  927. Xextern Cursor RightArrowCursor;
  928. X
  929. Xextern GC TitleNormalGC;
  930. Xextern GC MenuNormalGC;
  931. Xextern GC MenuReverseGC;
  932. Xextern GC MenuXorGC;
  933. Xextern GC IconNormalGC;
  934. Xextern GC VersionNormalGC;
  935. Xextern GC SizeNormalGC;
  936. Xextern GC DrawGC;
  937. X
  938. Xextern XContext TwmContext;
  939. Xextern XContext MenuContext;
  940. X
  941. Xextern int BorderWidth;
  942. Xextern unsigned long Foreground;
  943. Xextern unsigned long Background;
  944. X
  945. Xextern char Version[100];
  946. Xextern Pixmap UnknownPm;
  947. Xextern int UnknownWidth;
  948. Xextern int UnknownHeight;
  949. Xextern int FirstTime;
  950. Xextern int ReverseVideo;
  951. Xextern int FocusRoot;
  952. Xextern TwmWindow *Focus;
  953. Xextern int WarpCursor;
  954. Xextern int ParseError;
  955. X
  956. Xextern int TitleButton[MAX_BUTTONS + 1];
  957. X
  958. Xextern int TitleBarY;
  959. Xextern int TitleBarX;
  960. Xextern int MenuY;
  961. X
  962. Xextern Window JunkRoot;
  963. Xextern Window JunkChild;
  964. Xextern int JunkX;
  965. Xextern int JunkY;
  966. Xextern int JunkWidth;
  967. Xextern int JunkHeight;
  968. Xextern int JunkDepth;
  969. Xextern int JunkBW;
  970. Xextern int JunkMask;
  971. X
  972. X
  973. Xextern void Done();
  974. Xextern void Error();
  975. Xextern void Other();
  976. X
  977. X#endif _TWM_
  978. SHAR_EOF
  979. if test 5813 -ne "`wc -c < twm.h`"
  980. then
  981.     echo shar: error transmitting "twm.h" '(should have been 5813 characters)'
  982. fi
  983. fi
  984. if test -f 'util.h'
  985. then
  986.     echo shar: will not over-write existing file "util.h"
  987. else
  988. echo extracting "util.h"
  989. sed 's/^X//' >util.h <<'SHAR_EOF'
  990. X/*****************************************************************************/
  991. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  992. X/**                          Salt Lake City, Utah                           **/
  993. X/**                                                                         **/
  994. X/**                           All Rights Reserved                           **/
  995. X/**                                                                         **/
  996. X/**    Permission to use, copy, modify, and distribute this software and    **/
  997. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  998. X/**    granted, provided that the above copyright notice appear  in  all    **/
  999. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  1000. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  1001. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  1002. X/**    city pertaining to distribution  of the software without  specif-    **/
  1003. X/**    ic, written prior permission.                                        **/
  1004. X/**                                                                         **/
  1005. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  1006. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  1007. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  1008. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  1009. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  1010. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  1011. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  1012. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  1013. X/*****************************************************************************/
  1014. X
  1015. X/***********************************************************************
  1016. X *
  1017. X * $Header: util.h,v 1.4 88/04/15 07:09:41 tlastran Exp $
  1018. X *
  1019. X * utility routines header file
  1020. X *
  1021. X * 28-Oct-87 Thomas E. LaStrange        File created
  1022. X *
  1023. X ***********************************************************************/
  1024. X
  1025. X#ifndef _UTIL_
  1026. X#define _UTIL_
  1027. X
  1028. Xextern void    InitButtons();
  1029. Xextern void    MoveOutline();
  1030. Xextern Pixmap    MakePixmap();
  1031. Xextern void    GetUnknownIcon();
  1032. X
  1033. X#endif _UTIL_
  1034. SHAR_EOF
  1035. if test 2376 -ne "`wc -c < util.h`"
  1036. then
  1037.     echo shar: error transmitting "util.h" '(should have been 2376 characters)'
  1038. fi
  1039. fi
  1040. if test -f 'version.h'
  1041. then
  1042.     echo shar: will not over-write existing file "version.h"
  1043. else
  1044. echo extracting "version.h"
  1045. sed 's/^X//' >version.h <<'SHAR_EOF'
  1046. X/*****************************************************************************/
  1047. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  1048. X/**                          Salt Lake City, Utah                           **/
  1049. X/**                                                                         **/
  1050. X/**                           All Rights Reserved                           **/
  1051. X/**                                                                         **/
  1052. X/**    Permission to use, copy, modify, and distribute this software and    **/
  1053. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  1054. X/**    granted, provided that the above copyright notice appear  in  all    **/
  1055. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  1056. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  1057. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  1058. X/**    city pertaining to distribution  of the software without  specif-    **/
  1059. X/**    ic, written prior permission.                                        **/
  1060. X/**                                                                         **/
  1061. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  1062. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  1063. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  1064. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  1065. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  1066. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  1067. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  1068. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  1069. X/*****************************************************************************/
  1070. X
  1071. X/**********************************************************************
  1072. X *
  1073. X * $Header: version.h,v 1.2 88/04/15 07:10:11 tlastran Exp $
  1074. X *
  1075. X * TWM version externs
  1076. X *
  1077. X *  8-Apr-88 Tom LaStrange        Initial Version.
  1078. X *
  1079. X **********************************************************************/
  1080. X
  1081. X#ifndef _VERSION_
  1082. X#define _VERSION_
  1083. X
  1084. Xextern char *Revision;
  1085. Xextern char *Date;
  1086. X
  1087. X#endif _VERSION_
  1088. SHAR_EOF
  1089. if test 2311 -ne "`wc -c < version.h`"
  1090. then
  1091.     echo shar: error transmitting "version.h" '(should have been 2311 characters)'
  1092. fi
  1093. fi
  1094. if test -f 'xterm.bm'
  1095. then
  1096.     echo shar: will not over-write existing file "xterm.bm"
  1097. else
  1098. echo extracting "xterm.bm"
  1099. sed 's/^X//' >xterm.bm <<'SHAR_EOF'
  1100. X/*****************************************************************************/
  1101. X/**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
  1102. X/**                          Salt Lake City, Utah                           **/
  1103. X/**                                                                         **/
  1104. X/**                           All Rights Reserved                           **/
  1105. X/**                                                                         **/
  1106. X/**    Permission to use, copy, modify, and distribute this software and    **/
  1107. X/**    its documentation  for  any  purpose  and  without  fee is hereby    **/
  1108. X/**    granted, provided that the above copyright notice appear  in  all    **/
  1109. X/**    copies and that both  that  copyright  notice  and  this  permis-    **/
  1110. X/**    sion  notice appear in supporting  documentation,  and  that  the    **/
  1111. X/**    name  of Evans & Sutherland  not be used in advertising or publi-    **/
  1112. X/**    city pertaining to distribution  of the software without  specif-    **/
  1113. X/**    ic, written prior permission.                                        **/
  1114. X/**                                                                         **/
  1115. X/**    EVANS  & SUTHERLAND  DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO    **/
  1116. X/**    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILI-    **/
  1117. X/**    TY AND FITNESS, IN NO EVENT SHALL EVANS &  SUTHERLAND  BE  LIABLE    **/
  1118. X/**    FOR  ANY  SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY  DAM-    **/
  1119. X/**    AGES  WHATSOEVER RESULTING FROM  LOSS OF USE,  DATA  OR  PROFITS,    **/
  1120. X/**    WHETHER   IN  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS    **/
  1121. X/**    ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE  OR PER-    **/
  1122. X/**    FORMANCE OF THIS SOFTWARE.                                           **/
  1123. X/*****************************************************************************/
  1124. X
  1125. X#define xterm_width 48
  1126. X#define xterm_height 48
  1127. Xstatic char xterm_bits[] = {
  1128. X   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0xff, 0x00,
  1129. X   0x20, 0x00, 0x00, 0x00, 0x00, 0x03, 0x20, 0xfe, 0xff, 0xff, 0x1f, 0x05,
  1130. X   0x20, 0x01, 0x00, 0x00, 0x20, 0x09, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x11,
  1131. X   0xa0, 0xfc, 0xff, 0x00, 0x40, 0x21, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x21,
  1132. X   0xa0, 0xfc, 0x01, 0x00, 0x40, 0x21, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x21,
  1133. X   0xa0, 0xfc, 0xff, 0x3f, 0x40, 0x21, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x21,
  1134. X   0xa0, 0xfc, 0x03, 0x00, 0x40, 0x21, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x21,
  1135. X   0xa0, 0xfc, 0xff, 0x01, 0x40, 0x21, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x21,
  1136. X   0xa0, 0xfc, 0x00, 0x00, 0x40, 0x21, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x21,
  1137. X   0xa0, 0x00, 0x00, 0x00, 0x40, 0x21, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x21,
  1138. X   0xa0, 0x00, 0x00, 0x00, 0x40, 0x21, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x21,
  1139. X   0xa0, 0x00, 0x00, 0x00, 0x40, 0x21, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x21,
  1140. X   0xa0, 0x00, 0x00, 0x00, 0x40, 0x21, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x11,
  1141. X   0xa0, 0x00, 0x00, 0x00, 0x40, 0x11, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x09,
  1142. X   0xa0, 0x00, 0x00, 0x00, 0x40, 0x09, 0xa0, 0x00, 0x00, 0x00, 0x40, 0x05,
  1143. X   0x20, 0x01, 0x00, 0x00, 0x20, 0x05, 0x20, 0xfe, 0xff, 0xff, 0x1f, 0x03,
  1144. X   0x20, 0x00, 0x00, 0x00, 0x00, 0x03, 0xc0, 0xff, 0xff, 0xff, 0xff, 0x00,
  1145. X   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1146. X   0xc0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x00, 0x00, 0x00, 0x00, 0x03,
  1147. X   0xa0, 0xaa, 0xaa, 0xaa, 0x2a, 0x03, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02,
  1148. X   0x50, 0x55, 0x55, 0x55, 0x95, 0x02, 0x08, 0x00, 0x00, 0x00, 0x40, 0x02,
  1149. X   0xa8, 0xaa, 0xaa, 0xaa, 0x4a, 0x02, 0x04, 0x00, 0x00, 0x00, 0x20, 0x01,
  1150. X   0xb4, 0xff, 0xff, 0xff, 0xad, 0x00, 0x02, 0x00, 0x00, 0x00, 0x50, 0x00,
  1151. X   0xfe, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
  1152. SHAR_EOF
  1153. if test 3798 -ne "`wc -c < xterm.bm`"
  1154. then
  1155.     echo shar: error transmitting "xterm.bm" '(should have been 3798 characters)'
  1156. fi
  1157. fi
  1158. # end of shell archive
  1159. exit 0
  1160.  
  1161.